package model;

import org.w3c.dom.Element;
import org.w3c.dom.Node;

public class ObjetoRobado {
	
	private String nombre;
	private Ciudad ciudadDondeFueRobado;
	private Categoria categoria;
	
	public ObjetoRobado(String nomb, Ciudad ciudad, Categoria cat) {
		this.nombre = nomb;
		this.ciudadDondeFueRobado = ciudad;
		this.categoria = cat;
	}	
	
	public String obtenerNombre(){
		return this.nombre;
	}
	
	public Ciudad obtenerCiudadDondeFueRobado(){
		return this.ciudadDondeFueRobado;
	}

	public Categoria obtenerCategoria(){
		return this.categoria;
	}
	
	public int obtenerNroDeCiudades(){
		return this.categoria.obtenerCantidadDeCiudadesARecorrer();
	}
	
	public static ObjetoRobado hidratar (Node elementoObjetoRobado){
		ObjetoRobado nuevoObjeto = new ObjetoRobado ("",null, null);
		String categoriaDelObjeto=(((Element)elementoObjetoRobado).getAttribute("categoria"));
		nuevoObjeto.nombre= (((Element)elementoObjetoRobado).getAttribute("descripcion"));
		nuevoObjeto.categoria= Categoria.valueOf(categoriaDelObjeto);
			for (int i=0; i<elementoObjetoRobado.getChildNodes().getLength(); i++){
				Element elementoCiudad = (Element)elementoObjetoRobado.getChildNodes().item(i);
					Ciudad ciudad =Ciudad.hidratar(elementoCiudad);
					nuevoObjeto.ciudadDondeFueRobado=ciudad;}
			
	return nuevoObjeto;
					
}
	
	
}
